package com.ax.base.drugstore.service;

import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Service;

import com.ax.base.common.domain.Tree;
import com.ax.base.drugstore.domain.BaseDrugstore;
import com.ax.base.system.domain.MenuDO;

@Service
public interface DrugstoreService {

	/**
	 * 药监查询(模块:药监人员)*包含该人的药监部门信息
	 * 
	 * @param Map<String, Object> map
	 *           
	 * @return List<BaseDrugstore>
	 */
	public List<BaseDrugstore> queryDrugStoreSer(Map<String, Object> params);
	
	/**
	 * 药房增加(模块:药房管理)*跳转增加页面
	 * 
	 * @param Long pId
	 *           
	 * @return BaseDrugstore BaseDrugstore
	 */
	public BaseDrugstore getBaseDrugstore(Long pid);
	
	/**
	 * 药房保存(模块:药房管理)
	 * 
	 * @param BaseDrugstore baseDrugstore
	 *           
	 * @return SUCC
	 */
	public void insertBaseDrugstoreSer(BaseDrugstore baseDrugstore);
	
	/**
	 * 药房修改(模块:药房管理)
	 * 
	 * @param BaseDrugstore baseDrugstore
	 *           
	 * @return SUCC
	 */	
	public void updateBaseDrugstoreSer(BaseDrugstore baseDrugstore);
	
	/**
	 * 药店名是否重复(新增)
	 * 
	 * @param String parameter
	 *         
	 * @return boolean
	 */
	public boolean drugstoreNameValidateSer(String parameter);
	
	/** Tree
	 * 
	 * @param Long parentDrugstoreId
	 *           
	 * @return Tree<MenuDO>
	 */
	public Tree<MenuDO> getDrugTree(Long parentDrugstoreId);
	
	/**
	 * 代码是否重复(新增)
	 * 
	 * @param Map<String,Object> map
	 *         
	 * @return boolean
	 */
	public boolean creditCodeValidateSer(Map<String,Object> map);
	
	/**
	 * 代码是否重复(修改)
	 * 
	 * @param Map<String,Object> map
	 *         
	 * @return boolean
	 */
	public boolean updateCreditCodeValidateSer(String parameter);
	
	/**
	 * 药店名是否重复(修改)
	 * 
	 * @param String parameter
	 *         
	 * @return boolean
	 */
	public boolean updateDrugstoreNameValidateSer(String parameter);
}
